package com.design.pattern.factory.simple;

/**
 * 假设此时项目需要进行第三方登录模块的开发.
 * 其中第三方登录包括了[微博,QQ,weChat],但是后期还有可能会进行更多的第三方登录
 * 通过观察这三个渠道,他们的步骤基本都是一样的,差别只在细节上面,都是:1.获取用户授权2.获取用户信息3.保存用户信息到我们自己的项目内
 * 所以,我们可以定义一个接口,针对这三个步骤提供三个方法.
 */
public interface ThirdPartLogin {
    /**
     * 获取用户授权
     */
    void getUserAuthorization();

    /**
     * 获取用户数据
     */
    void getUserInfo();

    /**
     * 保存用户数据
     */
    void saveUser();
}
